package net.lanelife.casino.caipiao.dto.admin;

import java.util.Date;

import net.lanelife.casino.caipiao.entity.BalanceChangeRecord.Direction;
import net.lanelife.casino.caipiao.entity.BalanceExchangeRecord.Result;
import net.lanelife.casino.caipiao.entity.BalanceExchangeRecord.Status;
import net.lanelife.casino.caipiao.entity.enumeration.GamePlatform;
import net.lanelife.casino.common.dto.PersistentDTO;
import net.lanelife.casino.common.entity.json.serialize.CurrencySerializer;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

public class BalanceExchangeRecordDTO extends PersistentDTO<Integer> {

	private static final long serialVersionUID = 7131086166801868081L;

	private Integer id;
	
	private String userName;

	private String billNo;
	
	private String transBillNo;
	
	@JsonSerialize(using = CurrencySerializer.class)
	private Double amount;
	
	@JsonSerialize(using = CurrencySerializer.class)
	private Double previousBalance;
	
	private GamePlatform platform;
	
	private Direction direction;
	
	private Status status;
	
	private Result result;
	
	private String resultDescription;
	
	private String createdBy;
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createdDate;
	
	private String lastModifiedBy;
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date lastModifiedDate;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getBillNo() {
		return billNo;
	}

	public void setBillNo(String billNo) {
		this.billNo = billNo;
	}

	public String getTransBillNo() {
		return transBillNo;
	}

	public void setTransBillNo(String transBillNo) {
		this.transBillNo = transBillNo;
	}

	public Double getAmount() {
		return amount;
	}

	public void setAmount(Double amount) {
		this.amount = amount;
	}

	public Double getPreviousBalance() {
		return previousBalance;
	}

	public void setPreviousBalance(Double previousBalance) {
		this.previousBalance = previousBalance;
	}

	public GamePlatform getPlatform() {
		return platform;
	}

	public void setPlatform(GamePlatform platform) {
		this.platform = platform;
	}

	public Direction getDirection() {
		return direction;
	}

	public void setDirection(Direction direction) {
		this.direction = direction;
	}

	public Status getStatus() {
		return status;
	}

	public void setStatus(Status status) {
		this.status = status;
	}

	public Result getResult() {
		return result;
	}

	public void setResult(Result result) {
		this.result = result;
	}

	public String getResultDescription() {
		return resultDescription;
	}

	public void setResultDescription(String resultDescription) {
		this.resultDescription = resultDescription;
	}

	public String getCreatedBy() {
		return createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedDate() {
		return createdDate;
	}

	public void setCreatedDate(Date createdDate) {
		this.createdDate = createdDate;
	}

	public String getLastModifiedBy() {
		return lastModifiedBy;
	}

	public void setLastModifiedBy(String lastModifiedBy) {
		this.lastModifiedBy = lastModifiedBy;
	}

	public Date getLastModifiedDate() {
		return lastModifiedDate;
	}

	public void setLastModifiedDate(Date lastModifiedDate) {
		this.lastModifiedDate = lastModifiedDate;
	}

}
